# -*- coding: utf-8 -*-
"""
@author = 老表
@date = 2019-08-16
@个人公众号 : 简说Python
"""

# 从 Pillow 中导入图片处理模块 Image
from PIL import Image
# 导入基于 Tesseract 的文字识别模块 pytesseract
import pytesseract
# 导入发送网络请求的库 requests
import requests
# 导入正则库 re
import re

"""	
模拟登录，破解字母数字图片验证码	
目标网站：https://so.gushiwen.org	
"""


# 下载识别验证码图片函数
def get_verification(url):
    # 生成验证码图片url
    # 通过session发送get请求，获取验证码
    resp = requests.get(url)
    # 将验证码保证到本地
    with open("test.jpg", 'wb') as f:
        f.write(resp.content)
    # 打开验证码图片文件
    im = Image.open("test.jpg")
    # 基本处理，灰度处理，提升识别准确率
    im = im.convert("L")
    # 保存处理后的图片
    im.save("test.jpg")
    # 利用pytesseract进行图片内容识别
    text = pytesseract.image_to_string(im)
    # 去除识别结果中的非数字/字母内容
    text = re.sub("\W", "", text)
    # 返回验证码内容
    return text


def img():
    im = Image.open("test.jpg")
    # print(pytesseract.image_to_string(im, lang='chi_sim'))
    print(pytesseract.image_to_string(im, lang='eng'))


# text = get_verification("https://login.sina.com.cn/cgi/pin.php?r=52766351&amp;s=0&amp;p=tc-5fb6e7b84b7903d8054d12bfba6ca0834fcc")
# print(text)

img()
